Many web-search systems require human-labeled data. One human-labeling task used to build web-search systems has people judge the relative relevance of web pages for a particular search query. The resulting data allows a wide variety of machine-learning algorithms to be applied to construct ranking systems for search. Other human-labeling tasks relevant to building web-search systems include labeling web pages for spam content, labeling the intent of search queries, labeling whether a particular search query is relevant to a certain domain, e.g. entertainment or medicine, and labeling entities in a query or web page, e.g., noting that a word corresponds to a particular actor or product.
System designers often collect human-labeled data either by hiring professionals to manually label the data or through more indirect methods such as collecting click logs or examining the search history from users' browsers. As an example of the last approach, Google®, Microsoft®, and Yahoo!® all provide search toolbars that record users' clicks and page visits. Although this approach yields a large amount of data, the data is often not easily applicable to the system-building task at hand. Hiring professionals, on the other hand, can be time consuming and costly.
Human-computation games engage players in an enjoyable activity where the players are simultaneously performing a useful data-labeling task. After incurring the initial software-development costs, such data-collection methods result in essentially free human-supplied labels, and a popular web game can generate data very quickly.
The first human-computation game to gain wide-spread popularity was the ESP Game, in which two players are shown the same image and are asked to type descriptions for that image. Several years since its deployment, the game is still being played, generating tags for images on a daily basis. Since then, many human computation games have been developed to collect data about music, images, and for extracting facts and knowledge to power the semantic web.
Human-computation games often use partner agreement to ensure data quality; for example, if two strangers playing the ESP game provide the same description to an image, it is likely that the description is a good one. In order to take advantage of partner agreement, a human-computation game generally requires multiple players, which in turn requires synchronization and online communication between the players. This requirement inherently means that such games employ a complex server-client infrastructure where the game server keeps track of the states of all simultaneous games and frequently interacts with all active player clients. Thus, developing human-computation games is time-consuming, with typical development times in the order of months.
Another important feature of a human-computation game is that the game be fun and engaging. It is often difficult, however, to ascertain whether the game is fun or how users will behave until the game is deployed and tested by users. As a result, fast prototyping is important. If prototypes can be created in a matter of minutes or hours, overall development time can be greatly shortened and a tighter, more informative feedback loop in the game research process will ensue.
Finally, it is noted that many human-computation games share several commonalities, especially with respect to generalizable game mechanisms and the need for player synchronization.
This Background is provided to introduce a brief context for the Summary and Detailed Description that follow. This Background is not intended to be an aid in determining the scope of the claimed subject matter nor be viewed as limiting the claimed subject matter to implementations that solve any or all of the disadvantages or problems presented above.